import router from './router'
import NProgress from 'nprogress'
import 'nprogress/nprogress.css'
import { getToken } from '@/utils/request/auth'

NProgress.configure({ showSpinner: false })

// 普通路由白名单
const whiteList = ['/login']
// 动态路由白名单
const trendsWhiteList = []

router.beforeEach((to, from, next) => {
  NProgress.start()
  if (getToken()) {
    // 有 token 直接到首页
    if (to.path === '/login') {
      next({ path: '/' })
      NProgress.done()
    } else {
      next()
    }
  } else {
    // 没有 token ，如果在免登录白名单或者动态路由白名单，直接进入；否则全部重定向到登录页
    if (whiteList.indexOf(to.path) !== -1) {
      next()
    } else if (trendsWhiteList.some(item => to.path.indexOf(item) !== -1)) {
      next()
    }
    else {
      next(`/login`)
      NProgress.done()
    }
  }
})

router.afterEach(() => {
  NProgress.done()
})
